package com.example.demo.controller;

import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.Set;

@RestController
@RequestMapping("webservice")
public class TestController {

    @Resource
    RedisTemplate redisTemplate;


//    @Autowired
//    JdbcTemplate jdbcTemplate;

    @GetMapping("/redel")
    public Object world(HttpServletRequest request) {
        Set keys = redisTemplate.keys("OFF_ONLINE_*");
        Long delete = redisTemplate.delete(keys);
        return delete;
    }

//    @PostMapping("tripManualCheck")
//    @ApiOperation(value = "故障人工复核", notes = "故障人工复核")
//    @ApiImplicitParams({
//            @ApiImplicitParam(name = "x", paramType = "query", value = "测距至M站（kA）", required = true, dataType = "double"),
//            @ApiImplicitParam(name = "z1s", paramType = "query", value = "线路单位长度正序阻抗z1开始值", required = true, dataType = "double"),
//            @ApiImplicitParam(name = "z1e", paramType = "query", value = "线路单位长度正序阻抗z1结束值", required = true, dataType = "double"),
//            @ApiImplicitParam(name = "ks", paramType = "query", value = "零序补偿系数K开始值", required = true, dataType = "double"),
//            @ApiImplicitParam(name = "ke", paramType = "query", value = "零序补偿系数K结束值", required = true, dataType = "double"),
//            @ApiImplicitParam(name = "imb", paramType = "query", value = "故障点1M侧故障相电流（一次，kA）", required = true, dataType = "double"),
//            @ApiImplicitParam(name = "inbs", paramType = "query", value = "故障点1N侧故障相电流（一次，kA）开始值", required = true, dataType = "double"),
//            @ApiImplicitParam(name = "inbe", paramType = "query", value = "故障点1N侧故障相电流（一次，kA）结束值", required = true, dataType = "double"),
//            @ApiImplicitParam(name = "im0", paramType = "query", value = "故障点1M侧零序电流3I0（一次，kA）", required = true, dataType = "double"),
//            @ApiImplicitParam(name = "umbs", paramType = "query", value = "故障点1M侧故障相电压（一次，kV）开始值", required = true, dataType = "double"),
//            @ApiImplicitParam(name = "umbe", paramType = "query", value = "故障点1M侧故障相电压（一次，kV）结束值", required = true, dataType = "double"),
//            @ApiImplicitParam(name = "imb2", paramType = "query", value = "故障点2M侧故障相电流（一次，kA）", required = true, dataType = "double"),
//            @ApiImplicitParam(name = "inbs2", paramType = "query", value = "故障点2N侧故障相电流（一次，kA）开始值", required = true, dataType = "double"),
//            @ApiImplicitParam(name = "inbe2", paramType = "query", value = "故障点2N侧故障相电流（一次，kA）结束值", required = true, dataType = "double"),
//            @ApiImplicitParam(name = "im02", paramType = "query", value = "故障点2M侧零序电流3I0（一次，kA）", required = true, dataType = "double"),
//            @ApiImplicitParam(name = "umbs2", paramType = "query", value = "故障点2M侧故障相电压（一次，kV）开始值", required = true, dataType = "double"),
//            @ApiImplicitParam(name = "umbe2", paramType = "query", value = "故障点2M侧故障相电压（一次，kV）结束值", required = true, dataType = "double"),
//    })
//    public Object tripManualCheck(@RequestBody Map<Object, String> params) {
//        Map data = new HashMap();
//        String x = params.get("x");
//        if (ObjectUtils.isEmpty(x)) {
//            Tools.errorMsg(data, "测距至M站（kA）不能为空");
//            return data;
//        }
//        //测距至M站（kA）
//        Complex X = new Complex(Double.parseDouble(x));
//        String umbs = params.get("umbs");
//        if (ObjectUtils.isEmpty(umbs)) {
//            Tools.errorMsg(data, "故障点1M侧故障相电压（一次，kV）开始值不能为空");
//            return data;
//        }
//        String umbe = params.get("umbe");
//        if (ObjectUtils.isEmpty(umbe)) {
//            Tools.errorMsg(data, "故障点1M侧故障相电压（一次，kV）结束值不能为空");
//            return data;
//        }
//        //M侧故障相电压（一次，kV）
//        Complex UMb = new Complex(Double.parseDouble(umbs), Double.parseDouble(umbe));
//        String imb = params.get("imb");
//        if (ObjectUtils.isEmpty(imb)) {
//            Tools.errorMsg(data, "故障点1M侧故障相电流（一次，kA）不能为空");
//            return data;
//        }
//        //M侧故障相电流（一次，kA）
//        Complex IMb = new Complex(Double.parseDouble(imb));
//        String ks = params.get("ks");
//        if (ObjectUtils.isEmpty(ks)) {
//            Tools.errorMsg(data, "零序补偿系数K开始值不能为空");
//            return data;
//        }
//        String ke = params.get("ke");
//        if (ObjectUtils.isEmpty(ke)) {
//            Tools.errorMsg(data, "零序补偿系数K结束值不能为空");
//            return data;
//        }
//        //零序补偿系数K
//        Complex K = new Complex(Double.parseDouble(ks), Double.parseDouble(ke));
//        String im0 = params.get("im0");
//        if (ObjectUtils.isEmpty(im0)) {
//            Tools.errorMsg(data, "故障点1M侧零序电流3I0（一次，kA）不能为空");
//            return data;
//        }
//        //M侧零序电流3I0（一次，kA）
//        Complex IM0 = new Complex(Double.parseDouble(im0));
//        String inbs = params.get("inbs");
//        if (ObjectUtils.isEmpty(inbs)) {
//            Tools.errorMsg(data, "故障点1N侧故障相电流（一次，kA）开始值不能为空");
//            return data;
//        }
//        String inbe = params.get("inbe");
//        if (ObjectUtils.isEmpty(inbe)) {
//            Tools.errorMsg(data, "故障点1N侧故障相电流（一次，kA）结束值不能为空");
//            return data;
//        }
//        //N侧故障相电流（一次，kA）
//        Complex INb = new Complex(Double.parseDouble(inbs), Double.parseDouble(inbe));
//        String z1s = params.get("z1s");
//        if (ObjectUtils.isEmpty(z1s)) {
//            Tools.errorMsg(data, "线路单位长度正序阻抗z1开始值不能为空");
//            return data;
//        }
//        String z1e = params.get("z1e");
//        if (ObjectUtils.isEmpty(z1e)) {
//            Tools.errorMsg(data, "线路单位长度正序阻抗z1结束值不能为空");
//            return data;
//        }
//        //线路单位长度正序阻抗z1
//        Complex Z1 = new Complex(Double.parseDouble(z1s), Double.parseDouble(z1e));
//        String umbs2 = params.get("umbs2");
//        if (ObjectUtils.isEmpty(umbs2)) {
//            Tools.errorMsg(data, "故障点2M侧故障相电压（一次，kV）开始值不能为空");
//            return data;
//        }
//        String umbe2 = params.get("umbe2");
//        if (ObjectUtils.isEmpty(umbe2)) {
//            Tools.errorMsg(data, "故障点2M侧故障相电压（一次，kV）结束值不能为空");
//            return data;
//        }
//        //M侧故障相电压（一次，kV）
//        Complex UMb2 = new Complex(Double.parseDouble(umbs2), Double.parseDouble(umbe2));
//        String imb2 = params.get("imb2");
//        if (ObjectUtils.isEmpty(imb2)) {
//            Tools.errorMsg(data, "故障点2M侧故障相电流（一次，kA）不能为空");
//            return data;
//        }
//        //M侧故障相电流（一次，kA）
//        Complex IMb2 = new Complex(Double.parseDouble(imb2));
//        String im02 = params.get("im02");
//        if (ObjectUtils.isEmpty(im02)) {
//            Tools.errorMsg(data, "故障点2M侧零序电流3I0（一次，kA）不能为空");
//            return data;
//        }
//        //M侧零序电流3I0（一次，kA）
//        Complex IM02 = new Complex(Double.parseDouble(im02));
//        String inbs2 = params.get("inbs2");
//        if (ObjectUtils.isEmpty(inbs2)) {
//            Tools.errorMsg(data, "故障点2N侧故障相电流（一次，kA）开始值不能为空");
//            return data;
//        }
//        String inbe2 = params.get("inbe2");
//        if (ObjectUtils.isEmpty(inbe2)) {
//            Tools.errorMsg(data, "故障点2N侧故障相电流（一次，kA）结束值不能为空");
//            return data;
//        }
//        //N侧故障相电流（一次，kA）
//        Complex INb2 = new Complex(Double.parseDouble(inbs2), Double.parseDouble(inbe2));
//        //计算过渡电阻Rg数据点1
//        Complex val = ComplexCalculateUtils.calculate(UMb, IMb, INb, IM0, K, Z1, X);
//        data.put("rg1", val.toString());
//        data.put("rg1abs", val.abs());
//        data.put("rg1arg", val.arg());
//        //计算过渡电阻Rg2数据点2
//        Complex val2 = ComplexCalculateUtils.calculate(UMb2, IMb2, INb2, IM02, K, Z1, X);
//        data.put("rg2", val2.toString());
//        data.put("rg2abs", val2.abs());
//        data.put("rg2arg", val2.arg());
//        data.put("code", 1001);
//        return data;
//    }


}
